from IPython.display import HTML, display,Image
HTML('''<script>
code_show=true;
function code_toggle() {
if (code_show){
$('div.input').hide();
} else {
$('div.input').show();
}
code_show = !code_show
}
$( document ).ready(code_toggle);
</script>
<form action="javascript:code_toggle()"><input type="submit" value="Click here to toggle on/off the raw code."></form>''')
HTML("""
<style>
.output_png {
display: table-cell;
text-align: center;
vertical-align: middle;
}
</style>
""")
import warnings
warnings.filterwarnings('ignore')
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as mticker
import xarray as xr
from matplotlib import animation
import cartopy.crs as ccrs
import cartopy
import cartopy.feature as cfeature
import pandas as pd
import matplotlib.gridspec as gridspec
import os.path
from cartopy.mpl.gridliner import LONGITUDE_FORMATTER, LATITUDE_FORMATTER
from matplotlib.dates import DateFormatter
import matplotlib.dates as mdates
xr.set_options(display_style="html")
# Set common figure parameters
plt.style.use('seaborn-ticks')
newparams = { 'axes.grid': True,
'lines.linewidth': 1.5, 'lines.linewidth': 2,
'ytick.labelsize':15,
'xtick.labelsize':15,
'axes.labelsize':16,
'axes.titlesize':16,
'legend.fontsize':14,
'figure.titlesize':16,
'font.family':'Helvetica Light'}
# 'font.family':'DejaVu Sans'}
plt.rcParams.update(newparams)
try:
import seawater
except ModuleNotFoundError:
!pip install seawater # the install function from the question
def simpleaxis(ax):
ax.spines['bottom'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.get_xaxis().tick_top()
ax.get_yaxis().tick_left()
ax.xaxis.set_label_position('top')
def zoomed_ax(ax_padre,ax_hijo,location,limits_x,limits_y,color):
ax=ax_padre.inset_axes(location, transform=ax_padre.transData)
ax.set_facecolor((1, 1, 1,0))
ax.set(xlim=limits_x,ylim=limits_y,xticklabels=[],yticklabels=[],xticks=[],yticks=[])
ax_hijo.set(xlim=limits_x,ylim=limits_y,xticklabels=[],yticklabels=[],xticks=[],yticks=[])
ax.invert_yaxis()
ax.indicate_inset_zoom(ax_hijo, edgecolor=color)
return ax_padre,ax_hijo,ax
Argo is a real-time global ocean in situ observing system.
Argo is a global network of nearly 4000 autonomous probes measuring pressure, temperature and salinity from the surface to 2000m depth every 10 days. The localisation of these probes is nearly random between the 60th parallels (see live coverage here). All probes data are collected by satellite in real-time, processed by several data centers and finally merged in a single dataset (collecting more than 2 millions of vertical profiles data) made freely available to anyone through a ftp server or monthly zip snapshots.
import wget
name_file='nodc_5906017_prof.nc'
print('Verifing existence of {}'.format(name_file))
print('..')
print('..')
print('..')
if os.path.isfile(name_file) == False:
file=wget.download('https://www.ncei.noaa.gov/data/oceans/argo/gadr/data/aoml/5906017/nodc_5906017_prof.nc')
print("The file {} was just downloaded".format(file))
else:
print("The file {} already is in the directory".format(name_file))
Verifing existence of nodc_5906017_prof.nc .. .. .. The file nodc_5906017_prof.nc already is in the directory
All information obtained from .nc file is printed below:
data = xr.open_dataset('nodc_5906017_prof.nc')
data
array(b'Argo profile ', dtype=object)
array(b'3.1 ', dtype=object)
array(b'1.2 ', dtype=object)
array(b'19500101000000', dtype=object)
array(b'20190401200032', dtype=object)
array(b'20200914050034', dtype=object)
array([b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ', b'5906017 ',
b'5906017 ', b'5906017 '], dtype=object)array([b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo ',
b'UW, Argo '],
dtype=object)array([b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER ',
b'STEPHEN RISER '],
dtype=object)array([[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL '],
[b'PRES ', b'TEMP ', b'PSAL ']],
dtype=object)array([ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12., 13., 14.,
15., 16., 17., 18., 19., 20., 21., 22., 23., 24., 25., 26., 27., 28.,
29., 30., 31., 32., 33., 34., 35., 36., 37., 38., 39., 40., 41., 42.,
43., 44., 45., 46., 47., 48., 49., 50., 51., 52., 53., 54., 55., 56.,
57.])array([b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A'], dtype=object)array([b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO',
b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO',
b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO',
b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO',
b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO',
b'AO', b'AO', b'AO', b'AO', b'AO', b'AO', b'AO'], dtype=object)array([b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 ',
b'7700 '], dtype=object)array([b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ',
b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ',
b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ',
b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ',
b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ',
b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ',
b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ', b'2B ',
b'2B '], dtype=object)array([b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A'], dtype=object)array([b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX ',
b'APEX '], dtype=object)array([b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 ',
b'8308 '], dtype=object)array([b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 ',
b'102918 '], dtype=object)array([b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ',
b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ',
b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ',
b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ',
b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ',
b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ',
b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ', b'846 ',
b'846 '], dtype=object)array(['2019-03-23T02:09:52.000000000', '2019-03-24T05:51:57.999999744',
'2019-03-25T09:42:43.000000000', '2019-04-04T07:57:52.000000256',
'2019-04-14T06:20:32.000000000', '2019-04-24T04:42:36.000000000',
'2019-05-04T02:56:54.000000000', '2019-05-14T01:14:34.000000000',
'2019-05-23T23:43:01.000000000', '2019-06-02T22:37:26.000000000',
'2019-06-12T21:06:07.000000000', '2019-06-22T19:33:55.000000000',
'2019-07-02T17:53:24.000000256', '2019-07-12T16:40:49.000000000',
'2019-07-22T15:15:21.000000000', '2019-08-01T13:50:04.000000256',
'2019-08-11T12:19:29.000000000', '2019-08-21T10:45:08.000000000',
'2019-08-31T09:26:25.999999744', '2019-09-10T08:12:07.000000000',
'2019-09-20T07:05:03.000000000', '2019-09-30T06:14:31.999999744',
'2019-10-10T05:27:06.000000000', '2019-10-20T04:42:22.999999744',
'2019-10-30T04:13:53.000000000', '2019-11-09T03:55:33.000000000',
'2019-11-19T04:00:41.000000000', '2019-11-29T04:23:43.000000000',
'2019-12-09T04:39:19.000000000', '2019-12-19T04:35:23.000000000',
'2019-12-29T04:58:03.000000000', '2020-01-08T04:12:35.999999744',
'2020-01-18T04:03:53.000000000', '2020-01-28T03:38:39.000000000',
'2020-02-07T03:24:15.000000000', '2020-02-17T03:19:38.000000000',
'2020-02-27T03:10:21.000000000', '2020-03-08T02:39:45.000000000',
'2020-03-18T03:05:48.000000000', '2020-03-28T02:41:13.999999744',
'2020-04-07T03:08:14.000000000', '2020-04-17T02:47:23.000000000',
'2020-04-27T02:53:37.000000000', '2020-05-07T03:19:57.000000000',
'2020-05-17T03:58:51.000000000', '2020-05-27T02:58:56.000000000',
'2020-06-06T02:52:15.000000000', '2020-06-16T02:21:38.000000000',
'2020-06-26T02:10:18.000000000', '2020-07-06T01:26:08.000000256',
'2020-07-16T01:25:23.000000000', '2020-07-26T00:53:15.000000000',
'2020-08-05T00:45:09.000000000', '2020-08-14T23:50:58.000000000',
'2020-08-24T23:35:57.999999744', '2020-09-03T22:49:20.000000000',
'2020-09-13T22:38:46.000000000'], dtype='datetime64[ns]')array([b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1'], dtype=object)array(['2019-03-23T02:22:30.000000000', '2019-03-24T06:04:30.000000000',
'2019-03-25T09:55:29.999999744', '2019-04-04T08:10:30.000000000',
'2019-04-14T06:33:10.000000000', '2019-04-24T04:54:59.999999744',
'2019-05-04T03:09:10.000000000', '2019-05-14T01:26:30.000000000',
'2019-05-23T23:56:30.000000000', '2019-06-02T23:03:50.000000000',
'2019-06-12T21:18:20.000000000', '2019-06-22T19:46:30.000000000',
'2019-07-02T18:06:30.000000000', '2019-07-12T16:54:00.000000000',
'2019-07-22T15:28:00.000000256', '2019-08-01T14:02:30.000000000',
'2019-08-11T12:32:10.000000000', '2019-08-21T10:57:39.999999744',
'2019-08-31T09:39:00.000000000', '2019-09-10T08:38:30.000000000',
'2019-09-20T07:17:30.000000000', '2019-09-30T06:26:30.000000256',
'2019-10-10T05:39:40.000000000', '2019-10-20T04:54:50.000000000',
'2019-10-30T04:25:50.000000000', '2019-11-09T04:08:10.000000000',
'2019-11-19T04:13:00.000000256', '2019-11-29T04:37:30.000000000',
'2019-12-09T04:52:30.000000000', '2019-12-19T05:01:50.000000256',
'2019-12-29T05:11:40.000000000', '2020-01-08T04:25:00.000000000',
'2020-01-18T04:16:30.000000000', '2020-01-28T03:52:00.000000000',
'2020-02-07T03:36:30.000000000', '2020-02-17T03:32:40.000000000',
'2020-02-27T03:23:30.000000000', '2020-03-08T02:52:00.000000000',
'2020-03-18T03:19:10.000000000', '2020-03-28T03:08:50.000000000',
'2020-04-07T03:20:30.000000000', '2020-04-17T02:59:30.000000000',
'2020-04-27T03:06:30.000000000', '2020-05-07T03:32:59.999999744',
'2020-05-17T04:12:00.000000000', '2020-05-27T03:11:00.000000000',
'2020-06-06T03:05:00.000000000', '2020-06-16T02:34:10.000000000',
'2020-06-26T02:23:00.000000000', '2020-07-06T01:53:00.000000000',
'2020-07-16T01:37:40.000000000', '2020-07-26T01:05:30.000000000',
'2020-08-05T00:57:30.000000000', '2020-08-15T00:03:00.000000000',
'2020-08-24T23:48:20.000000256', '2020-09-03T23:02:30.000000000',
'2020-09-13T22:51:09.999999744'], dtype='datetime64[ns]')array([24.833, 24.851, 24.864, 24.942, 24.996, 24.978, 24.856, 24.694, 24.484,
24.26 , 24.072, 24.041, 24.115, 24.261, 24.546, 24.876, 25.167, 25.264,
25.062, 24.694, 24.342, 24.078, 23.966, 23.894, 23.83 , 23.809, 23.761,
23.77 , 23.818, 23.869, 23.894, 23.957, 23.989, 24.061, 24.128, 24.203,
24.255, 24.265, 24.252, 24.251, 24.267, 24.272, 24.26 , 24.247, 24.301,
24.339, 24.418, 24.466, 24.467, 24.46 , 24.448, 24.373, 24.273, 24.165,
24.04 , 23.979, 23.983])array([-125.289, -125.296, -125.308, -125.284, -125.292, -125.187, -125.033,
-124.879, -124.761, -124.667, -124.551, -124.386, -124.157, -124.048,
-124.112, -124.225, -124.249, -124.161, -124.027, -123.994, -123.99 ,
-123.901, -123.76 , -123.687, -123.575, -123.525, -123.495, -123.477,
-123.506, -123.539, -123.555, -123.598, -123.662, -123.776, -123.906,
-123.979, -124.037, -124.058, -124.168, -124.29 , -124.501, -124.675,
-124.922, -125.133, -125.312, -125.528, -125.744, -125.936, -126.08 ,
-126.183, -126.251, -126.289, -126.378, -126.506, -126.623, -126.721,
-126.825])array([b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1',
b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1', b'1'], dtype=object)array([b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS ', b'GPS ', b'GPS ', b'GPS ',
b'GPS ', b'GPS '], dtype=object)array([b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A'], dtype=object)array([b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A'], dtype=object)array([b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A',
b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A', b'A'], dtype=object)array([b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow:continuous] ',
b'Primary sampling: mixed [deep: discrete, shallow: averaged] ',
b'Primary sampling: mixed [deep: discrete, shallow: averaged] ',
b'Primary sampling: mixed [deep: discrete, shallow: averaged] ',
b'Primary sampling: mixed [deep: discrete, shallow: averaged] '],
dtype=object)array([ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12., 13., 14.,
15., 16., 17., 18., 19., 20., 21., 22., 23., 24., 25., 26., 27., 28.,
29., 30., 31., 32., 33., 34., 35., 36., 37., 38., 39., 40., 41., 42.,
43., 44., 45., 46., 47., 48., 49., 50., 51., 52., 53., 54., 55., 56.,
57.])array([[ 4.4 , 6. , 8. , ..., 1948.69, 1998.58, nan],
[ 4.3 , 6. , 8. , ..., 1998.31, nan, nan],
[ 4.4 , 6. , 8. , ..., 1997.05, nan, nan],
...,
[ 4.4 , 6. , 8. , ..., 1998.47, nan, nan],
[ 4.1 , 6. , 8. , ..., 1948.31, 1998.02, nan],
[ 4.2 , 6. , 8. , ..., 1998.19, nan, nan]],
dtype=float32)array([[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
...,
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan]], dtype=object)array([[ 4.46, 6.06, 8.06, ..., 1948.75, 1998.64, nan],
[ 4.38, 6.08, 8.08, ..., 1998.39, nan, nan],
[ 4.49, 6.09, 8.09, ..., 1997.14, nan, nan],
...,
[ 4.53, 6.13, 8.13, ..., 1998.6 , nan, nan],
[ 4.14, 6.04, 8.04, ..., 1948.35, 1998.06, nan],
[ 4.33, 6.13, 8.13, ..., 1998.32, nan, nan]],
dtype=float32)array([[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
...,
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan]], dtype=object)array([[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
...,
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan]], dtype=float32)array([[19.514 , 19.487 , 19.434 , ..., 2.238 , 2.1871, nan],
[19.878 , 19.874 , 19.872 , ..., 2.1787, nan, nan],
[19.265 , 19.269 , 19.266 , ..., 2.1867, nan, nan],
...,
[23.409 , 23.355 , 23.219 , ..., 2.1657, nan, nan],
[23.062 , 23.045 , 22.995 , ..., 2.2072, 2.1604, nan],
[23.395 , 23.394 , 23.393 , ..., 2.1934, nan, nan]],
dtype=float32)array([[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
...,
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan]], dtype=object)array([[19.514 , 19.487 , 19.434 , ..., 2.238 , 2.1871, nan],
[19.878 , 19.874 , 19.872 , ..., 2.1787, nan, nan],
[19.265 , 19.269 , 19.266 , ..., 2.1867, nan, nan],
...,
[23.409 , 23.355 , 23.219 , ..., 2.1657, nan, nan],
[23.062 , 23.045 , 22.995 , ..., 2.2072, 2.1604, nan],
[23.395 , 23.394 , 23.393 , ..., 2.1934, nan, nan]],
dtype=float32)array([[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
...,
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan]], dtype=object)array([[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
...,
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan]], dtype=float32)array([[34.716 , 34.708 , 34.706 , ..., 34.6257, 34.6278, nan],
[34.784 , 34.782 , 34.781 , ..., 34.6282, nan, nan],
[34.645 , 34.645 , 34.645 , ..., 34.6282, nan, nan],
...,
[34.743 , 34.741 , 34.739 , ..., 34.631 , nan, nan],
[34.789 , 34.788 , 34.787 , ..., 34.6274, 34.6312, nan],
[34.66 , 34.66 , 34.66 , ..., 34.6289, nan, nan]],
dtype=float32)array([[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
...,
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan]], dtype=object)array([[34.716 , 34.708 , 34.706 , ..., 34.6257, 34.6278, nan],
[34.784 , 34.782 , 34.781 , ..., 34.6282, nan, nan],
[34.645 , 34.645 , 34.645 , ..., 34.6282, nan, nan],
...,
[34.743 , 34.741 , 34.739 , ..., 34.631 , nan, nan],
[34.789 , 34.788 , 34.787 , ..., 34.6274, 34.6312, nan],
[34.66 , 34.66 , 34.66 , ..., 34.6289, nan, nan]],
dtype=float32)array([[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', nan, nan],
...,
[b'1', b'1', b'1', ..., b'1', nan, nan],
[b'1', b'1', b'1', ..., b'1', b'1', nan],
[b'1', b'1', b'1', ..., b'1', nan, nan]], dtype=object)array([[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
...,
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan],
[nan, nan, nan, ..., nan, nan, nan]], dtype=float32)array([[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']],
[[b'PRES ', b'TEMP ', b'PSAL ']]],
dtype=object)array([[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']],
[[b'PRES_ADJUSTED = PRES - surface_pressure ',
b'none ',
b'none ']]],
dtype=object)array([[[b'surface_pressure=-0.06 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.08 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.07 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.13 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.16 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.15 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.17 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.15 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.07 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.16 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.12 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.11 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.12 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.14 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.13 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.14 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.13 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.15 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.12 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.01 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.06 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.12 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.08 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.07 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.15 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.06 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.02 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.06 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.02 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.08 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.04 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.08 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.03 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.10 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.13 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.02 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.01 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.06 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.13 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.11 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.08 dbar ',
b' ',
b' ']],
[[b'surface_pressure=0.05 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.12 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.09 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.12 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.10 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.13 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.04 dbar ',
b' ',
b' ']],
[[b'surface_pressure=-0.13 dbar ',
b' ',
b' ']]],
dtype=object)array([[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']],
[[b'Pressure adjusted at real time based on most recent valid surface pressure ',
b' ',
b' ']]],
dtype=object)array([[[b'20200403170134', b' ', b' ']],
[[b'20200403170134', b' ', b' ']],
[[b'20200403170134', b' ', b' ']],
[[b'20200403170135', b' ', b' ']],
[[b'20200403170135', b' ', b' ']],
[[b'20200403170135', b' ', b' ']],
[[b'20200403170135', b' ', b' ']],
[[b'20200403170136', b' ', b' ']],
[[b'20200403170136', b' ', b' ']],
[[b'20200403170136', b' ', b' ']],
[[b'20200403170136', b' ', b' ']],
[[b'20200403170136', b' ', b' ']],
[[b'20200403170137', b' ', b' ']],
[[b'20200403170137', b' ', b' ']],
[[b'20200403170137', b' ', b' ']],
[[b'20200403170137', b' ', b' ']],
[[b'20200403170138', b' ', b' ']],
[[b'20200403170138', b' ', b' ']],
[[b'20200403170138', b' ', b' ']],
[[b'20200403170138', b' ', b' ']],
[[b'20200403170139', b' ', b' ']],
[[b'20200403170139', b' ', b' ']],
[[b'20200403170139', b' ', b' ']],
[[b'20200403170139', b' ', b' ']],
[[b'20200403170139', b' ', b' ']],
[[b'20200403170140', b' ', b' ']],
[[b'20200403170140', b' ', b' ']],
[[b'20200403170140', b' ', b' ']],
[[b'20200619170942', b' ', b' ']],
[[b'20200619170942', b' ', b' ']],
[[b'20200619170942', b' ', b' ']],
[[b'20200403170141', b' ', b' ']],
[[b'20200403170141', b' ', b' ']],
[[b'20200619170943', b' ', b' ']],
[[b'20200619170943', b' ', b' ']],
[[b'20200403170142', b' ', b' ']],
[[b'20200728190038', b' ', b' ']],
[[b'20200403170143', b' ', b' ']],
[[b'20200728190038', b' ', b' ']],
[[b'20200328070049', b' ', b' ']],
[[b'20200619170944', b' ', b' ']],
[[b'20200619170944', b' ', b' ']],
[[b'20200619170945', b' ', b' ']],
[[b'20200728190038', b' ', b' ']],
[[b'20200619170945', b' ', b' ']],
[[b'20200619170946', b' ', b' ']],
[[b'20200728190038', b' ', b' ']],
[[b'20200625000206', b' ', b' ']],
[[b'20200728190039', b' ', b' ']],
[[b'20200728190039', b' ', b' ']],
[[b'20200728190039', b' ', b' ']],
[[b'20200728190039', b' ', b' ']],
[[b'20200805040034', b' ', b' ']],
[[b'20200817182437', b' ', b' ']],
[[b'20200825023743', b' ', b' ']],
[[b'20200904020034', b' ', b' ']],
[[b'20200914020037', b' ', b' ']]],
dtype=object)array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=object)
array([], shape=(0, 57), dtype=float32)
array([], shape=(0, 57), dtype=float32)
array([], shape=(0, 57), dtype=float32)
array([], shape=(0, 57), dtype=object)
array(-2147483647, dtype=int32)
time_str=data.juld.dt.strftime('%Y-%m-%d %H:%M:%S')
time_str2=data.juld.dt.strftime('%y-%m-%d')
time=pd.to_datetime(time_str.values)
time2=pd.to_datetime(time_str2.values)
days=(time-time[0]).days
fig=plt.figure(figsize=(12,8))
# Setting parent axes
ax1=fig.add_subplot(2,1,1,projection=ccrs.PlateCarree())
cf=ax1.scatter(data.longitude,data.latitude,s=6,c=days,cmap='inferno')
gl1 = ax1.gridlines(crs=ccrs.PlateCarree(), draw_labels=True,
linewidth=1, color='gray', alpha=0.6, linestyle='--')
gl1.xlabel_style = {'size': 16, 'color': 'black',}
gl1.ylabel_style = {'size': 16, 'color': 'black'}
# gl1.xformatter = LONGITUDE_FORMATTER
ax1.coastlines(resolution='10m')
ax1.set_extent((-140,-90,10,30))
ax1.stock_img()
# ax1.add_feature(cfeature.LAND)
# ax1.set_title('Argo float trajectorie',y=1.2)
# Setting child figure
ax2=fig.add_subplot(2,1,2,projection=ccrs.PlateCarree())
ax1,ax2,ax11=zoomed_ax(ax1,ax2,[-128,23,5,3],(-128,-123),(23,26),'k')
ax2.scatter(data.longitude,data.latitude,s=20,c=days,cmap='inferno')
gl2 = ax2.gridlines(crs=ccrs.PlateCarree(), draw_labels=True,
linewidth=1, color='gray', alpha=0.6, linestyle='--')
gl2.xlocator = mticker.FixedLocator(np.arange(-128, -122,1))
gl2.xlabel_style = {'size': 16, 'color': 'black',}
gl2.ylabel_style = {'size': 16, 'color': 'black'}
# gl2.xformatter = LONGITUDE_FORMATTER
ax2.stock_img()
# Setting cbar
cax= fig.add_axes([ax2.get_position().x1+0.07,ax2.get_position().y0,0.015,ax2.get_position().height])
cbar=plt.colorbar(cf,cax=cax,orientation="vertical",pad=0.15)
cbar.set_label('Days from [m/s]',fontsize=16)
cbar.ax.tick_params(labelsize=16)
plt.subplots_adjust(hspace=0.4)
plt.show()
Profiles of temperature are displayed for each profile registered by argo float
plt.figure(figsize=(9,6))
data.temp_adjusted.T.plot()
plt.gca().invert_yaxis()
plt.gca().set_title('Profiles of temperature registered by argo float',y=1.15)
ax2 = plt.gca().twiny()
ax2.plot(time,np.linspace(0,1,len(data.temp)),zorder=2)
date_form = DateFormatter("%y-%m")
ax2.xaxis.set_major_formatter(date_form)
plt.xticks(rotation=20)
# ax.xaxis.set_major_locator(mdates.MonthLocator(interval=10))
ax2.grid(False)
plt.show()
nprof = 25 #Specify a profile to plot
# Profile Plot
fig=plt.figure(figsize=(6,7))
ax=plt.subplot(111)
ax.plot(data.temp_adjusted[nprof], data.pres_adjusted[nprof])
ax.set_xlabel('Temperature (C)')
ax.set_ylabel('Pressure (dbar)')
ax.set_title('Argo Profile from %s' % data.juld[nprof].dt.strftime('%a, %b %d %H:%M').values)
simpleaxis(ax)
plt.gca().invert_yaxis() #Flip the y-axis
Oceanographic profiles and T-S diagrams
# Profile Plot
# Subplot example
fig, (ax1,ax2) = plt.subplots(1,2, sharey=True, figsize=(12,7))
nprof = 0 # Spring profile
ax1.plot(data.temp_adjusted[nprof], data.pres_adjusted[nprof], label=data.juld[nprof].dt.strftime('%Y-%m-%d').values)
ax2.plot(data.psal_adjusted[nprof], data.pres_adjusted[nprof])
nprof = 12 # Summer profile
ax1.plot(data.temp_adjusted[nprof], data.pres_adjusted[nprof], label=data.juld[nprof].dt.strftime('%Y-%m-%d').values)
ax2.plot(data.psal_adjusted[nprof], data.pres_adjusted[nprof])
nprof = 21 # Autunm profile
ax1.plot(data.temp_adjusted[nprof], data.pres_adjusted[nprof], label=data.juld[nprof].dt.strftime('%Y-%m-%d').values)
ax2.plot(data.psal_adjusted[nprof], data.pres_adjusted[nprof])
nprof = 31 # Winter profile
ax1.plot(data.temp_adjusted[nprof], data.pres_adjusted[nprof], label=data.juld[nprof].dt.strftime('%Y-%m-%d').values)
ax2.plot(data.psal_adjusted[nprof], data.pres_adjusted[nprof])
ax1.set_ylabel('Pressure (dbar)')
ax1.set_xlabel('Temperature (C)')
ax2.set_xlabel('Salinity')
ax1.invert_yaxis()
ax1.legend()
simpleaxis(ax1)
simpleaxis(ax2)
# Add some gridlines
ax1.grid()
ax2.grid()
# Add a super title
fig.suptitle('Argo Float #%d' % data.platform_number[nprof].values, fontsize=16);
fig,ax=plt.subplots(1,1,figsize=(9,6))
x = np.arange(33, 35, .1)
y = np.arange(2, 23, .5)
X, Y = np.meshgrid(x, y)
Z = seawater.eos80.dens0(X,Y)-1000
# Plot the contour lines
CS = ax.contour(X, Y, Z, colors='grey', linestyles='dashed', levels=np.arange(22,30,.5))
ax.clabel(CS, inline=1, fontsize=10, fmt='%0.1f')
# Plot the data
nprof = 25 #Selected profile
sc=ax.scatter(data.psal_adjusted[nprof], data.temp_adjusted[nprof], c=data.pres_adjusted[nprof], cmap='viridis_r')
ax.set(xlabel='Salinity',ylabel='Temperature (°C)')
ax.set_title('Argo Float #%d on %s' % (data.platform_number[nprof].values, data.juld[nprof].dt.strftime('%Y-%m-%d').values), fontweight='bold');
# Add a colorbar
cbh = plt.colorbar(sc,label='Pressure (dbar)');
salinity,temp=data.psal_adjusted[nprof], data.temp_adjusted[nprof]
rho=seawater.eos80.dens0(salinity,temp)[:-2]
press=data.pres_adjusted[nprof][:-2]
p_ave = (press[0:-1] + press[1:, ...]) / 2.
pden_up = seawater.pden(salinity[:-2][0:-1], temp[:-2][0:-1], press[0:-1], p_ave)
pden_lo = seawater.pden(salinity[:-2][1:], temp[:-2][1:], press[1:], p_ave)
mid_pden = (pden_up + pden_lo) / 2.
dif_pden = pden_up - pden_lo
delta_press=np.diff(press) # omite el último dato por ser nan
delta_rho=np.diff(rho[::-1])[::-1]
Falta la derivación de la frecuencia de Brunt-vesala
E=-1*(1/rho[:-1])*(delta_rho/(delta_press))
N,b,p=seawater.bfrq(salinity[:-2],temp[:-2],press)
def make_patch_spines_invisible(ax):
ax.set_frame_on(True)
ax.patch.set_visible(False)
for sp in ax.spines.values():
sp.set_visible(False)
fig, ax1 = plt.subplots(1,1,figsize=(6,7))
p1,=ax1.plot(E, press[:-1])
ax1.set_xlabel('Static stability' )
ax1.set_ylabel('Pressure (dbar)')
ax1.ticklabel_format(style='sci', axis='x', scilimits=(0,0))
ax2=ax1.twiny()
ax2.spines["top"].set_position(("axes", 1.2))
make_patch_spines_invisible(ax2)
ax2.spines["top"].set_visible(True)
ax2.grid(False)
p2,=ax2.plot(N, press[:-1])
ax2.ticklabel_format(style='sci', axis='x', scilimits=(0,0))
ax2.set_xlabel('frecuency [cycles/hour]' )
# ax2.xaxis.label.set_color(p2.get_color())
simpleaxis(ax1)
ax1.invert_yaxis() #Flip the y-axis
plt.show()
# plt.plot(delta_rho, depth[:-1])
# plt.plot(dif_pden, depth[:-1])
# plt.xlabel('Static stability ')
# plt.ylabel('Pressure (dbar)')
# plt.title('Argo Profile from %s' % data.juld[nprof].dt.strftime('%a, %b %d %H:%M').values)
# plt.gca().invert_yaxis() #Flip the y-axis
fig=plt.figure(figsize=(6,7))
ax=plt.subplot(111)
ax.plot(rho, press)
ax.set_xlabel('Density')
ax.set_ylabel('Pressure (dbar)')
ax.set_title('Argo Density Profile from %s' % data.juld[nprof].dt.strftime('%a, %b %d %H:%M').values)
simpleaxis(ax)
plt.gca().invert_yaxis() #Flip the y-axis
x = np.arange(0,50)
X, Y=np.meshgrid(x,press.values)
rho_new=np.tile(rho,len(x))
rho_new_reshape=rho_new.reshape((len(x),len(rho)))
tiempo=np.linspace(0,4,1000)
import matplotlib.patches as patches
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes
#define Matplotlib figure and axis
fig=plt.figure(figsize=(12,8))
gs = gridspec.GridSpec(3, 2)
ax1 = fig.add_subplot(gs[:2, 0])
ax2 = fig.add_subplot(gs[0, 1])
ax3 = fig.add_subplot(gs[1, 1])
ax4 = fig.add_subplot(gs[2, :])
plt.subplots_adjust(wspace=0.05)
# Main figure with profile
cf=ax1.contourf(X,Y,rho_new_reshape.T,20,cmap='inferno_r')
ax1.invert_yaxis()
ax1.set_ylabel('Pressure (dbar)')
ax1.set(xticklabels=[],xticks=[])
# First zommed axes
location=[20, 250, 10, 100]
limits_x = (20,30)
limits_y = (250, 350)
ax1,ax2,ax11=zoomed_ax(ax1,ax2,location,limits_x,limits_y,'skyblue')
ax11.add_patch(patches.Rectangle((24, 283), 1, 33,facecolor='none',edgecolor='black'))
ax11.axhline(y=300,linestyle='--',color='skyblue',lw=1)
ax2.contourf(X,Y,rho_new_reshape.T,20,cmap='inferno_r')
ax2.invert_yaxis()
ax2.axhline(y=300,linestyle='--',color='skyblue',lw=2)
ax2.add_patch(patches.Rectangle((24, 283), 2, 33,facecolor='none',edgecolor='black'))
# Second zoomed axes
location2=[20, 1500, 10, 100]
limits_x2 = (20,30)
limits_y2 = (1500, 1600)
ax1,ax3,ax12=zoomed_ax(ax1,ax3,location2,limits_x2,limits_y2,'lightcoral')
ax12.add_patch(patches.Rectangle((24, 1533), 1, 33,facecolor='none',edgecolor='white'))
ax12.axhline(y=1550,linestyle='--',color='lightcoral',lw=1)
ax3.contourf(X,Y,rho_new_reshape.T,20,cmap='inferno_r')
ax3.invert_yaxis()
ax3.axhline(y=1550,linestyle='--',color='lightcoral',lw=2)
ax3.add_patch(patches.Rectangle((24, 1533), 2, 33,facecolor='none',edgecolor='white'))
# Creatin colorbar
cax= fig.add_axes([ax3.get_position().x1+0.02,ax3.get_position().y0,0.02,ax1.get_position().height])
cbar=plt.colorbar(cf,cax=cax,orientation="vertical",pad=0.15)
cbar.set_label('Density',fontsize=16)
cbar.ax.tick_params(labelsize=16)
# set-up time series
ax4.set(ylim=(-11,11),xlim=(0,1),ylabel='Amplitud',xlabel='tiempo[s]')
for axis in ['top','bottom','left','right']:
ax11.spines[axis].set_linewidth(2)
ax11.spines[axis].set_color('skyblue')
for axis in ['top','bottom','left','right']:
ax12.spines[axis].set_linewidth(2)
ax12.spines[axis].set_color('lightcoral')
recs1=[]
recs2=[]
vert_delta1=[]
vert_delta2=[]
t=[]
line1,=ax4.plot(t,vert_delta1,color='skyblue')
line2,=ax4.plot(t,vert_delta2,color='lightcoral')
def init():
a=0
return fig,ax1,ax11,ax12,ax2,ax3,ax4
# # # Next we need to create a function that updates the values for the colormesh, as well as the title.
def animate(frame):
vertical_displacement1=10*np.cos(3600*(np.sqrt(E[50]*9.8)/2*np.pi)*tiempo[frame])
vertical_displacement2=10*np.cos(3600*(np.sqrt(E[500]*9.8)/2*np.pi)*tiempo[frame])
rec1=patches.Rectangle((24, 283+vertical_displacement1), 2, 33,facecolor='skyblue',edgecolor='k')
rec2=patches.Rectangle((24, 1533+vertical_displacement2), 2, 33,facecolor='lightcoral',edgecolor='white')
global recs
ax2.add_patch(rec1)
ax3.add_patch(rec2)
recs1.append(rec1)
recs2.append(rec2)
if frame >0:
for i,j in zip(recs1[:-1],recs2[:-1]):
i.set_visible(False)
j.set_visible(False)
vert_delta1.append(vertical_displacement1)
vert_delta2.append(vertical_displacement2)
t.append(tiempo[frame])
line1.set_data(t,vert_delta1)
line2.set_data(t,vert_delta2)
# Finally, we use the animation module to create the animation.
ani = animation.FuncAnimation(
fig, # figure
animate, # name of the function above
frames=260, # Could also be iterable or list
interval=200 # ms between frames
)
plt.close()
HTML(ani.to_jshtml())